A database may be stored in disk space. In the database, data may be organized into database tables and stored into portions of the disk space that are referred to as pages. The database tables store records (also referred to as “rows”).
Over time, large database tables may consume a large amount of disk space with pages that contain little or no database table data. Empty regions in the disk space may result from database table records being deleted from pages stored in those regions. The empty regions may vary in size from a small fragment of a page to entire pages. These empty regions may be re-used by the database table to which the page belongs, but not by other database objects that share the disk space in which the database is stored. Thus, such empty regions may be referred to as “trapped space” within the database system. Because such empty regions are not being used to store data, these empty regions may also be referred to as “empty pages” or “unused pages”.
Utility operations, such as database table reorganization, may be able to make these empty regions available to the other database objects. These utility operations are performed when the database object to be reorganized is offline for a period of time and require that there be a delay before the region can be utilized by another database object.
It is a common practice in many database applications to periodically delete large portions of older database table data, as newer data is added to the database table. This may result in empty regions of disk space sitting unused, while the database continues to grow as new data is added to objects that do not have pages available for reuse.